Robots have been widely used in the industry to replace human who had to perform dangerous and repetitive tasks. While earlier robots are usually required to manipulate objects in a limited range with less or no flexibility like robot arms in assembly lines, recent robots have become more intelligent and perceptive. Such robots are capable of performing more complex and difficult tasks including navigation, inspection, self-learning, and self-calibration thanks to advanced technologies for computation resources and sensory systems with lower cost. Some applications of these advanced robots include, but not limited to, housekeeping, underwater/space exploration, surgery with precision, and mine finding and mining.
Many aspects of sensory systems being used in robotics are adopted from human biological systems. Human senses including sight, hearing, smell, touch, and taste are very acute and efficient considering small sizes and fast processing times of their sensory systems. In the early stages of adopting these human sensing procedures, it was very difficult to create corresponding artificial sensory systems because of complexity, limited resources, and a lack of knowledge. Since then, a lot of efforts have been put into researches for these areas, and huge progresses have been made. Especially, human vision systems are relatively well understood and adopted in most advanced robot systems as a primary sensory system.
Some important features of human vision include three-dimensional perception, continuous tracking of a moving object, rapid object identification, and the like. Among them, three-dimensional perception is a fundamental element since it allows other features available. Many advanced robot systems that are required to perform navigation and/or manipulation in known or unknown environments have adopted three-dimensional vision systems, which collect and process environmental information surrounding a robot, and let the robot properly respond to stimuli without interruption from outside sources.
Typically, three-dimensional vision for robots can be accomplished by using stereo vision or optical flow methods, in which two images are compared in order to determine the three-dimensional location of an object. The former uses images taken by two parallel cameras that are disposed to view the object from different angles at the same time as disclosed in U.S. Pat. No. 5,432,712 to Chan, while the latter uses images taken at two different times by a single camera as disclosed in U.S. Pat. No. 5,109,425 to Lawton. Both methods require to find corresponding points of two different images using certain criteria such as color, shape, contrast, or other representative features. However, these processes can be very erroneous and time-consuming.
Research suggests that the human vision system is more efficient and effective in that it is capable of a rapid eye movement to the point of interest and contrasting high central visual resolution with low peripheral visual resolution in a wide field of view as disclosed in U.S. Pat. No. 5,103,306 to Weiman et al. These aspects demand fast changes of the optical axis and field of view of a lens system. However, it is difficult to accomplish such efficiency and effectiveness in a conventional robot vision system since those changes are usually performed by a complicated macroscopic servo mechanism.
To overcome the drawbacks of existing technologies, a desirable robot vision system requires a high-speed, accurate, miniaturized, and inexpensive three-dimensional imaging system.